#include "testlib.h"
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;

// 检查是否满足摆动排序条件: nums[0] < nums[1] > nums[2] < nums[3]...
bool checkWiggleSort(const vector<int>& nums) {
    for (int i = 0; i < nums.size() - 1; i++) {
        if (i % 2 == 0) {
            // 偶数索引位置的元素应该小于下一个元素
            if (nums[i] >= nums[i + 1]) {
                return false;
            }
        } else {
            // 奇数索引位置的元素应该大于下一个元素
            if (nums[i] <= nums[i + 1]) {
                return false;
            }
        }
    }
    return true;
}

// 检查输出的数组是否包含原始数组的所有元素
bool checkContainsAllElements(const vector<int>& original, const vector<int>& output) {
    if (original.size() != output.size()) {
        return false;
    }
    
    // 统计原始数组中每个元素的出现次数
    map<int, int> originalCount;
    for (int num : original) {
        originalCount[num]++;
    }
    
    // 检查输出数组中每个元素的出现次数
    map<int, int> outputCount;
    for (int num : output) {
        outputCount[num]++;
    }
    
    // 比较两个计数
    return originalCount == outputCount;
}

int main(int argc, char* argv[]) {
    registerTestlibCmd(argc, argv);
    
    // 读取输入
    int n = inf.readInt();
    vector<int> original(n);
    for (int i = 0; i < n; i++) {
        original[i] = inf.readInt();
    }
    
    // 读取参考答案
    vector<int> ans_output(n);
    for (int i = 0; i < n; i++) {
        ans_output[i] = ans.readInt();
    }
    
    // 读取用户输出
    vector<int> user_output(n);
    for (int i = 0; i < n; i++) {
        if (ouf.seekEof()) {
            quitf(_wa, "用户输出元素数量不足，期望 %d 个元素", n);
        }
        user_output[i] = ouf.readInt();
    }
    
    // 检查用户是否有多余输出
    if (!ouf.seekEof()) {
        quitf(_wa, "用户输出包含多余元素");
    }
    
    // 检查用户输出是否包含原始数组的所有元素
    if (!checkContainsAllElements(original, user_output)) {
        quitf(_wa, "用户输出的元素与原始数组不匹配");
    }
    
    // 检查用户输出是否满足摆动排序条件
    if (!checkWiggleSort(user_output)) {
        quitf(_wa, "用户输出不满足摆动排序条件 nums[0] < nums[1] > nums[2] < nums[3]...");
    }
    
    // 如果通过所有检查，则输出正确
    quitf(_ok, "答案正确");
}